約 3,910,202 件
https://w.atwiki.jp/wiki6_takt/pages/16.html
Windows KeyBind 【Documents and Settings\USER_NAME\】のディレクトリに 【.xyzzy】のファイルを作成する。 (load-library "Gates") 上の一行を記述し、【xyzzy.wxp/xyzzy.w2k】ファイルを削除するだけ。
https://w.atwiki.jp/pxy12770/pages/15.html
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; .xyzzy ;;;;;;;;;;;;;;;;;;;;;;;;;; ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; (defun copy-selection-or-region-to-clipboard () (interactive) (if (get-selection-type) (copy-selection-to-clipboard) (copy-region-to-clipboard (mark) (point))) ) (defun kill-selection-or-region-to-clipboard () (interactive "*") (if (get-selection-type) (kill-selection-to-clipboard) (kill-region-to-clipboard (mark) (point))) ) (defun kill-end-of-line-to-clipboard () (interactive "*p") (selection-end-of-line) (kill-selection-to-clipboard) ) (defun kill-line-to-clipboard () (interactive "*p") (kill-line) (yank-to-clipboard) ) (require "isearch") (global-set-key #\F5 goto-line) (global-set-key #\F6 grep-dialog) (global-set-key #\M-% replace-dialog) (global-set-key #\C-_ undo) (global-set-key #\C-\\ redo) ;(define-key ctl-x-map #\F5 undo) ;(global-set-key (#\C-x #\F5) undo) (global-set-key #\C-z undo) (global-set-key #\End end-of-line) (global-set-key #\Home beginning-of-line) (global-set-key #\S-End selection-end-of-line) (global-set-key #\S-Home selection-beginning-of-line) (global-set-key #\C-k kill-end-of-line-to-clipboard) (global-set-key #\C-y paste-from-clipboard) (global-set-key #\C-w kill-selection-or-region-to-clipboard) (global-set-key #\M-w copy-selection-or-region-to-clipboard) (global-set-key #\C-q copy-selection-or-region-to-clipboard) (global-set-key #\C-Home beginning-of-buffer) (global-set-key #\C-End end-of-buffer) (global-set-key #\C-l indent-region) (global-set-key #\C-s save-buffer) (global-set-key #\C-Right isearch-forward) (define-key *isearch-map* #\C-Right isearch-repeat-forward) (global-set-key #\C-Left isearch-backward) (define-key *isearch-map* #\C-Left isearch-repeat-backward) (global-set-key #\C- beginning-of-buffer) (global-set-key #\C- end-of-buffer) (setf (svref *kbd-translate-table* (char-code #\C-i)) #\C-F13) (global-set-key #\C-F13 isearch-forward) (define-key *isearch-map* #\C-F13 isearch-repeat-forward) (global-set-key #\C-. editor dabbrev-popup) ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; ruby ;;;;;;;;;;;;;;;;;;;;;; ;(load-library "Gates");Gates が好きならファイルの先頭に (load-library "ruby-mode") (push ("\\.rb$" . ruby-mode) *auto-mode-alist*) ; インデント量を変える。nilの時はタブを挿入 ;(setq *ruby-indent-column* 2) ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; rubyの昔の設定 ;;;;;;;;;;;;;;;;;;;;;; ;(load-library "ruby") ;(push ("\\.rb$" . ruby-mode) *auto-mode-alist*) ;; インデント量を変える ;;(setq *ruby-indent-column* 3) ;(load-library "ruby-lister") ;; rtags.rbまでのパス ;(setq *ruby-lister-rtags-path* "C /ruby/rtags.rb") ;(load-library "ruby-debug");debugモードを使うなら ;(load-library "ruby-doc");rdモードを使うなら ;(load-library "ruby-misc");その他を使うなら ;; ri.rbまでのパス ;(setq *ruby-information-command* "C /cygwin/usr/local/bin/ri.rb") ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; ;;;;;;;;;;; 括弧を強調表示するのだ ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; ;(require "paren") ;(turn-on-global-paren) ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; ;;;;;;;;;; バイナリエディタにするのだ ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; ;; M-x hexl-find-file ;; または、ファイルを読みこんだ後で ;; M-x hexl-mode ;; とする ;; ;; 編集方法は ローカルのキー割り当てを見てください ;; ;; hexl.exe のあるディレクトリ(PATH が通っていれば要らない) (setq hexl-exec-directory "c /Progra~1/xyzzy/site-lisp/") ;; ロード ;(load-library "hexl") ;; オートロードにしたい場合 (autoload hexl-mode "hexl" t nil) (autoload hexl-find-file "hexl" t nil) ;; お好みで ;(define-key *global-keymap* (#\C-c #\C-h) hexl-find-file) ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; ;; c-mode cc-mode ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; (setq c++-indent-level 4) (setq c-indent-lebel 4) ;************* html mode (export ed html+-mode "ed") (autoload html+-mode "html+-mode" t) (pushnew ("\\.s?html?$" . html+-mode) *auto-mode-alist* test equal) (push ("\\.rhtml$" . html+-mode) *auto-mode-alist*) (change-default-fileio-encoding *encoding-utf8n*) ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; ;; gtags の設定 ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; (export ed gtags-mode "ed") (autoload ed gtags-mode "gtags/gtags" t) (require "gtags/gtags-menu") ;;; Emacs Lisp 移植キット (require "elisp") ;;; gtags-mode (in-package "editor") (setq *gtags-mode-hook* # (lambda () (local-set-key #\M-t gtags-find-tag) (local-set-key #\M-r gtags-find-rtag) (local-set-key #\M-s gtags-find-symbol) (local-set-key #\M-e gtags-find-tag-from-here) ;(local-set-key #\M-a gtags-pop-stack) (local-set-key #\C-t gtags-pop-stack) (local-set-key #\M-j gtags-find-with-grep) (local-set-key #\M-c gtags-find-file-ext) (local-set-key #\M-n gtags-find-next-tag) (local-set-key #\M-p gtags-find-previous-tag) )) (setq *gtags-select-mode-hook* # (lambda () (local-set-key #\M-a gtags-pop-stack) (local-set-key #\PageUp previous-page-kept-selection) (local-set-key #\PageDown next-page-kept-selection) (local-set-key #\LBtnDown gtags-mouse-left-press) (local-set-key #\M-n # (lambda () (interactive) (next-virtual-line) (gtags-select-tag))) (local-set-key #\M-p # (lambda () (interactive) (previous-virtual-line) (gtags-select-tag))) )) (add-hook *c-mode-hook* # (lambda () (gtags-mode 1) ;(gtags-make-complete-list);未対応 )) (add-hook *c++-mode-hook* # (lambda () (gtags-mode 1))) (add-hook *php-mode-hook* # (lambda () (gtags-mode 1))) (in-package "user") ;; メニューいらんよなの切り替えスイッチ ; by Tetsuya Kamei [xyzzy 02412] (let ((menu *app-menu*)) (defun menu () (interactive) (set-menu (setq menu (unless menu *app-menu*))))) (set-menu *app-menu*) ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; ; grep結果をダブルクリックでファイルopen ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; (defun grep-mouse-left-press () "grep結果をダブルクリックでファイルopen" (interactive) (let ((click (mod *last-mouse-click-count* 6))) (if (= click 2) (first-error) (mouse-left-press)))) (defvar *grep-map* nil) (unless *grep-map* (setq *grep-map* (make-sparse-keymap)) (define-key *grep-map* #\LBtnDown grep-mouse-left-press)) (add-hook ed *grep-hook* # (lambda () (use-keymap *grep-map*))) (add-hook ed *grepd-hook* # (lambda () (use-keymap *grep-map*))) ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; ; shell3 ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; (setq *eshell* "bash -i") (require "shell3")
https://w.atwiki.jp/naoki_1111/pages/14.html
xyzzyの設定に関するメモ書き インストール ダウンロード:亀井さんページ解凍して好きなところに置く 設定 環境変数設定ファイルの置き場を環境変数に設定する SETX XYZZYHOME D \Tool\xyzzy .xyzzyファイル上記設定した置き場に .xyzzy ファイルを作成する siteinit.l site-lisp フォルダに、 siteinit.l ファイルを作成する。このファイルの設定内容を反映させるためには、ダンプファイル(xyzzy.wxp)を再作成する必要あり。 補足.xyzzyとsiteinit.lは、起動速度に差がある。siteinit.lの方が高速。ただしユーザ共通設定となる。 便利機能 セッション保存同時に開いている複数ファイル状態を保存する機能。 abbrev長い単語などを覚えさせる機能 dabbrevaddrevを簡易的に実施。ページ内にある単語で補完する。C-x /で補完。意図した単語がでるまで繰り返す。C-x \で候補リスト表示形式の補完。 C-uuniversal-argumentC-u n "入力":n回入力を繰り返す。nが指定されていない場合、4がデフォルト。 マークジャンプC-x C-x : Shift-Spaceでマークした行へのジャンプただし、マークと現在行の入れ替え機能なので、マーク位置が変更される。
https://w.atwiki.jp/nanige/pages/14.html
xyzzy - encoding
https://w.atwiki.jp/bovecrach/pages/46.html
Xyzzy コンテンツ一覧 Xyzzy Links有名どころ 自分のサイト 使ってるLisp(気が向いたら追加) コンテンツ一覧 etc.目次 参考にするリンク ビルドしたいなーWindowsでビルド でも、Linuxでビルドしたいなー 移植したいなー手放したくないものは三大美徳? emacs.l をどんどん拡張しちゃえばいいよね? 当面の目標 関連リンク Lisp Scrap Note目次 ファイル操作・時間更新指定ファイルの最終更新日を現在の日時に更新する 指定ディレクトリの最終更新日を現在の日時に更新する バッファ操作選択系セット Lispで範囲をuniq 指定したバッファが表示中の窓に今のバッファを表示する My Library目次 generic-comment-toggle概要 特徴 indent-to-token+概要 特徴 ライセンスNYSL Version 0.9982 NYSL Version 0.9982 (en) (Unofficial) Xyzzy Links 有名どころ FrontPage - XyzzyWiki http //xyzzy.s53.xrea.com/wiki/ drry+@- Optimized xyzzy 0.2.2.234 http //blog.drry.jp/2005/05/25/2325 自分のサイト xyzzy’s Lisps http //park.geocities.jp/bovecrach/ xyzzy Lisp公開場所&Androidの呟き - Yahoo!ブログ http //blogs.yahoo.co.jp/bovecrach 使ってるLisp(気が向いたら追加) silog - script/complete+ http //white.s151.xrea.com/wiki/index.php?script%2Fcomplete%2B silog - script/ac-mode http //white.s151.xrea.com/wiki/index.php?script%2Fac-mode silog - script/snippet http //white.s151.xrea.com/wiki/index.php?script%2Fsnippet silog - script/virtual-file-archive http //white.s151.xrea.com/wiki/index.php?script%2Fvirtual-file-archive xyzzy my-dired http //www.geocities.jp/m_y_m_m_y/xyzzy/#my-dired
https://w.atwiki.jp/mad-scientist/pages/13.html
xyzzyの使い方メモになります。 バイナリファイルに書き込み with-open-fileのオプションで encoding binaryを指定します。 バイナリデータへの変換はcode-charを使用します。 例) H 00~H FFのデータを書き出してみる。 (with-open-file (out "test.bin" direction output if-exist supersede encoding binary) (dotimes (n 256) (write-char (code-char n) out))) バイナリファイルの読み出し 例) 上の「バイナリファイルに書き込み」で作成したファイルを 読み出して表示してみる。 (with-open-file (in "test.bin" encoding binary) (let ((ch)) (while (setf ch (read-char in nil)) (print (char-code ch))))) ハッシュテーブルの中身を全部表示する maphash関数を使用します。 例) エンコード種類のハッシュテーブルの中身を表示してみる。 (let ((alist nil)) (maphash # (lambda (x y) (print (cons x y))) *mime-charset-name-hash-table*) alist)
https://w.atwiki.jp/lambda/pages/22.html
2011.1.29 いろんなWebページを参考に立ち上げているが、散逸の恐れもあるのでまとめておく。 xyzzyのインストール インストール後の設定について記述。 環境変数XYZZYHOMEを設定する。 Windows7での環境変数設定は、コントロールパネル→システムとセキュリティ→システム→システムの詳細設定 インストールディレクトリーを値として設定。 XYZZYHOME c \tools\xyzzy xyzzy.exeがあるディレクトリに.xyzzyを作成。xyzzy上で作成するとよい。 .xyzzyの中身 (set-default-directory "C /cygwin/home/kenji/") (load-library "Gates") 参考ページ http //mechanics.civil.tohoku.ac.jp/soft/node47.html
https://w.atwiki.jp/bovecrach/pages/60.html
目次 参考にするリンク ビルドしたいなーWindowsでビルド でも、Linuxでビルドしたいなー 移植したいなー手放したくないものは三大美徳? emacs.l をどんどん拡張しちゃえばいいよね? 当面の目標 関連リンク 参考にするリンク 言わずと知れた亀井さんのページ http //www.jsdlab.co.jp/~kamei/ 有志が開発中のxyzzy http //xyzzy-022.github.com/ 上記のGitHub https //github.com/xyzzy-022/xyzzy ビルドしたいなー というわけで、GitHubから取得。 git clone git //github.com/xyzzy-022/xyzzy.git bin Windowsでビルド 説明を見る限りでは、 VC++ 2010 をインストールして build.batを叩いて bytecompile.batを叩く 以上。 かんたんやなー。 でも、Linuxでビルドしたいなー 最近は生活環境がWindowsからLinuxに移ってしまった。 当然仕事の資料はWindowsの方が見やすいので使ってはいるのだが、 ソースを見るとなれば Eclipse も xyzzy も Linux となっている。 昔、gccでビルド出来ていた記憶があるので、 どこかから引っ張ってきて試してみたいところだ。 目次に戻る 移植したいなー Linux環境ではやはり Emacs を使うことになっていて、頑張っている。 でも xyzzy で作った資産は非常に有用度が高い状況にあるわけで、 実際このページも xyzzy に atwiki-mode なんていう適当な mode 作って編集している。 手放したくないものは三大美徳? すでに手足に近い感覚で触っている xyzzy。 頭で考えたらキーバインドも忘れてしまうレベル。 「Ctrl + r」を keymap にしたり、手が覚えるように xyzzy を配置しているわけで。 イマサラ Emacs に移行したところで感覚が全然ついていかない。 そして何より、覚えるの面倒。 emacs.l をどんどん拡張しちゃえばいいよね? というわけで最近取り組んでいるのが 「Emacs lispからの簡単移植キット」を勝手にさらに拡張しちゃおうぜ っていう企画。 Emacs の資産全部 xyzzy で動いちゃえば遜色ないよねー。 目次に戻る 当面の目標 Linux環境でビルドしちゃう。んで動かす。サヨウナラ Wine。 emacs.l をさらに拡張して Emacs資産を食っちゃおっ! 関連リンク 取得中です。 trackback 目次に戻る タグ一覧:Xyzzy Xyzzy Etc 名前
https://w.atwiki.jp/juria/pages/84.html
xyzzy + estraier.l Hyper Estraier Mode on xyzzyHyper Estraier estraier.l v0.0.1Lisp の修正 Hyper Estraier Mode on xyzzy [2008-02-06] MyWiki より転記・修正 [2006-02-08] デスクトップ検索を xyzzy から Hyper Estraier インデックスを使った全文検索システム Windows版バイナリパッケージ(hyperestraier-1.x.x-win32.zip)を展開後、その フォルダにpathを通す。(HE-grep 導入時に設定済みなら、そのままで OK。) estraier.l v0.0.1 公開終了 ▼導入 1. estraier.l を ~/site-lisp/ にコピー、必要ならバイトコンパイル 2.~/.xyzzy か ~/site-lisp/sitlint.l に (require "estraier") * estraier-help.html(Hyper Estraier Mode マニュアル)には site-lispフォルダに estraier.l を置き、(require "estraier/estraier") となっていますが、それでは”ファイルがありません”と怒られます。 (require "estraier/estraier") にするなら estraier フォルダごと ~/site-lisp/ に置きます。 3.xyzzy を再起動 メニューバーに「Estraier」ボタンと ~/xyzzy/.estraier-mode/ フォルダが 作成される。 ▼準備 1.インデックスを保存する場所を決める(デフォルト以外) M-x est est-add-casket-dir Enter Folder E /HTML/casket Enter Title WEBソース Enter 「indexフォルダとして登録する?」と聞かれるので、「はい」 2.インデックス作成 [メニュー]→[index作成、追加、削除]をクリック、または M-x est est-add-index ・表示された *Estraier-Add-Index* バッファに、インデックスを作成したい フォルダを D D、 g でインデックス化開始、 ・ダイアログでファイルタイプ、文字コードなどを設定、確認後 OK ・終了したら q でインデックスモードを抜ける。 ※ HE-grep 導入済みの場合は、1の作業のみで検索・最適化の対象として 認識されるが、index 削除の対象にはならないので注意。 3.検索 M-x est estsearch 表示されたダイアログで index を選択、検索語を入力 AND検索:空白区切り NOT検索:! OR検索:| 区切り 検索語に空白を含む場合は "" "" で囲む 検索結果のファイルパス上で Enter で、関連付け実行 4.ファイルの更新や追加があったときに index に差分を書き直す [メニュー]→[フォルダ情報の更新] または M-x est est-sync 対象フォルダパスの上で s 5.ファイルを削除した時の index への反映 [メニュー]→[削除したファイルの反映] または M-x est est-purge 6.インデックスファイルの最適化 [メニュー]→[dbファイルの最適化] または M-x est est-optimize 7.indexの削除 [メニュー]→[index作成、追加、削除]をクリック、または M-x est est-add-index 対象フォルダパスの上で d Lisp の修正 ■検索対象パスに空白が含まれると怒られる estraier.l の 283行目、casketdir " " を書き換える (xyzzyの使い方が分からぬやし 励ましあえ その8 127)(未検証) "\"" casketdir "\"" " " * \は、バックスラッシュです。 ■日本語の検索ができない 文字コードの選択肢を増やす(estcmd の オプションを xdoc2txt の出力に合わせる) 202行目 (encoding-data-list ("自動判別" "Shift_JIS" "ISO-2022-JP(メール)" "UTF-8" "EUC-JP" "CP932")) 261行目 (cmdlist ("estcmd search -sf -ic CP932 -vh -max -1 " "estcmd search -ic CP932 -vh -max -1 ")) 307行目 (encoding-data-list ("自動判別" "Shift_JIS" "ISO-2022-JP(メール)" "UTF-8" "EUC-JP" "CP932")) 397,398行目 "-ic EUC-JP " "-ic CP932 -pc CP932")) PDFやDOCのインデックス化時に [CP932] を指定します。 とりあえず、これで行けてます。 -
https://w.atwiki.jp/ryuchin/pages/11.html
インストール Tips ソート(並べ替え)する。 filter-region, filter-buffer で外部コマンド sort を実行している。 リージョンをソート --- C-x | sort バッファ全体をソート --- C-x # sort 設定 ファイラで削除する際に、ゴミ箱を使用する ;; ファイラで削除する際に、ゴミ箱を使用する (setq *filer-use-recycle-bin* t) リージョンに色をつける http //hie.s64.xrea.com/xyzzy/mylib/rv-region.htmlよりrv-region.lをダウンロードして、site-lispに配置し、siteinit.lに以下を追加 ;; リージョンに色をつける (require "rv-region") (global-set-key #\C-@ rv-set-mark-command) Emacs風のキーバインド 以下の設定を「emacskey.l」等のファイル名に設定し、siteinit.lか.xyzzyに(load-library "emacskey")を追記 ; key bind (global-set-key #\C-/ undo) (global-set-key #\M-v previous-page) (global-set-key #\M-% replace-string) (global-set-key #\C-M-% replace-regexp) ;(global-set-key #\M-% query-replace) ;(global-set-key #\C-M-% query-replace-regexp) (global-set-key #\C-M-\\ indent-region) (global-set-key (#\C-x #\h) mark-page) (global-set-key (#\C-x #\u) undo) (global-set-key (#\C-x #\r #\d) delete-rectangle) (global-set-key (#\C-x #\r #\k) kill-rectangle) (global-set-key (#\C-x #\r #\o) open-rectangle) (global-set-key (#\C-x #\r #\t) string-rectangle) (global-set-key (#\C-x #\r #\y) yank-rectangle) (global-set-key (#\C-x #\r #\w) copy-rectangle) (global-set-key #\Home beginning-of-buffer) (global-set-key #\End end-of-buffer) (global-set-key #\C-_ undo) (global-set-key #\C-- negative-argument) (global-set-key #\C-\\ toggle-ime) (dolist (c (#\C-0 #\C-1 #\C-2 #\C-3 #\C-4 #\C-5 #\C-6 #\C-7 #\C-8 #\C-9)) (global-set-key c digit-argument)) (global-set-key (#\C-x #\n #\n) narrow-to-region) (global-set-key (#\C-x #\n #\w) widen) (global-set-key #\M- eval-expression) (substitute-key-definition next-virtual-line next-line) (substitute-key-definition previous-virtual-line previous-line) ; インクリメンタルサーチ (C-s, C-r) (require "isearch") ; dynamic abbreviation (require "dabbrev") (global-set-key #\M-/ dabbrev-expand) ; write-file ; バッファーの名前や割り付けられているファイル名も新しく指定 ; されたファイルに変える (define-key ctl-x-map #\C-w emacs-write-file) ; C-x C-v ; 廃棄するバッファのファイル名がミニバッファに表示 (setq *find-other-file-requires-file-name* t) ; sort-lines (defun sort-lines (start end) (interactive "*r") (filter-region "sort" start end)) ; ウィンドウを左右に分割 (define-key ctl-x-map #\3 split-window-vertically) ; ispell-word (defun ispell-word() (interactive "*") (let ((end (progn (skip-chars-forward "A-Za-z") (point))) (beg (progn (skip-chars-backward "A-Za-z") (point)))) (ispell-region beg end))) (global-set-key #\M-$ ispell-word) ; frame (global-set-key (#\C-x #\5 #\o) other-pseudo-frame) (global-set-key (#\C-x #\5 #\0) delete-pseudo-frame) (global-set-key (#\C-x #\5 #\2) new-pseudo-frame) ; 文字コードの変更 (global-set-key (#\C-x #\RET #\f) change-fileio-encoding) カーソルが行頭にある場合は、行自体を削除する 以下をsiteinit.lか.xyzzyに追記する。 (defun my-kill-line ( optional arg) (interactive "*p") (cond ((bolp) (let ((point (point)) (lines (cond ((or (null arg) ( = arg 1)) 0) (t (- arg 1))))) (kill-region point (progn (forward-line lines) (goto-eol) (forward-char) (point))))) (t (kill-line arg)))) (define-key *global-keymap* #\C-k my-kill-line)